﻿using System;
using System.Windows;
using Microsoft.Practices.Composite.Modularity;
using Microsoft.Practices.Composite.UnityExtensions;

using Centrica.TaskManager.Task;
using Centrica.TaskManager.Task.Calendar;

namespace Centrica.TaskManager.Shell
{
    public class BootStrapper : UnityBootstrapper
    {

        protected override DependencyObject CreateShell()
        {

            Shell shell = Container.Resolve<Shell>();

            shell.Show();

            return shell;
        }

        protected override IModuleCatalog GetModuleCatalog()
        {

            ModuleCatalog catalog = new ModuleCatalog();

            catalog.AddModule(typeof(TasksModule));
            catalog.AddModule(typeof(TaskCalendarModule));

            return catalog;

        }

    }
}
